<group>
<ul class='breadcrumb'><li><a href='%pathto:mdoc;'>Index</a></li><li><a href='%pathto:misc.vl_histmarg;'>Prev</a></li><li><a href='%pathto:misc.vl_ihashfind;'>Next</a></li></ul><div class="documentation"><p>
V = <a href="%pathto:misc.vl_homkermap;">VL_HOMKERMAP</a>(X, N) computes a 2*N+1 dimensional approximated
kernel map for the Chi2 kernel. X is an array of data points. Each
point is expanded into a vector of dimension 2*N+1 and saved to
the output V. The expanded feature vectors are stacked along the
first dimension, so that the output array V has the same
dimensions of the input array X except for the first one, which is
2*N+1 times larger.
</p><p>
The function accepts the following options:
</p><dl><dt>
KChi2
</dt><dd><p>
Compute the map for the Chi2 kernel.
</p></dd><dt>
KINTERS
</dt><dd><p>
Compute the map for the intersection kernel.
</p></dd><dt>
KL1
</dt><dd><p>
Same as KINTERS, but deprecated as the name is not fully
accurate.
</p></dd><dt>
KJS
</dt><dd><p>
Compute the map for the JS (Jensen-Shannon) kernel.
</p></dd><dt>
Period
<span class="defaults">[automatically tuned]</span></dt><dd><p>
Set the period of the kernel specturm. The approximation is
based on periodicizing the kernel specturm. If not specified,
the period is automatically set based on the heuristic described
in [2].
</p></dd><dt>
Window
<span class="defaults">[RECTANGULAR]</span></dt><dd><p>
Set the window used to truncate the spectrum before The window
can be either RECTANGULAR or UNIFORM window. See [2] and the API
documentation for details.
</p></dd><dt>
Gamma
<span class="defaults">[1]</span></dt><dd><p>
Set the homogeneity degree of the kernel. The standard kernels
are 1-homogeneous, but sometimes smaller values perform better
in applications. See [2] for details.
</p></dd><dt>
Example
</dt><dd><p>
The following code results in approximatively the same
similarities matrices between points X and Y:
</p><pre>
  x = rand(10,1) ;
  y = rand(10,100) ;
  psix = vl_homkermap(x, 3) ;
  psiy = vl_homkermap(y, 3) ;
  figure(1) ; clf ;
  ker = vl_alldist(x, y, 'kchi2') ;
  ker_ = psix' * psiy ;
  plot([ker ; ker_]') ;
</pre></dd><dt>
Note
</dt><dd><p>
The homogeneous kernels K(X,Y) are normally defined for
non-negative data only. VL_HOMKERMAP defines them for both
positive and negative data by using the definition
SIGN(X)SIGN(Y)K(ABS(X),ABS(Y)) -- note that other extensions are
possible as well (see [2]).
</p></dd><dt>
REFERENCES
</dt><dd><p>
[1] A. Vedaldi and A. Zisserman
`Efficient Additive Kernels via Explicit Feature Maps',
Proc. CVPR, 2010.
</p><p>
[2] A. Vedaldi and A. Zisserman
`Efficient Additive Kernels via Explicit Feature Maps',
PAMI, 2011 (submitted).
</p></dd></dl><p>
See also: <a href="%pathto:vl_help;">VL_HELP</a>().
</p></div></group>
